- 介紹全面對稱的雙觸發系統
- 增加多條同步傳輸通路
- 帶有對稱A觸發和B觸發的現代數字示波器
引言
觸發是在屏幕上播放穩定的重復波形的關鍵,同時也為捕獲一次性事件提供了一個有效的工具。隨著數字示波器的出現,觸發功能得到了許多新的擴展。
大多數示波器提供了輔助觸發系統或 “B”觸發器,允許用戶定義范圍更寬的條件。B觸發器等待主(褹)觸發發生,然后在越過自己的邊沿門限時觸發采集。這兩者可以結合使用,以設置某些相當復雜的觸發條件。例如,A可能在設備時鐘輸入線路上檢測到一個毛刺,如果在輸出上遇到上升沿或下降沿,可以觸發B。如果沒有這種轉換,那么毛刺可以忽略。這兩套條件結合使用,可以確定毛刺是否會引起不想要的狀態變化。
直到最近,B觸發功能一直限于邊沿檢測。但是對于復雜的新信號格式,特別是PCI Express和串行ATA等串行協議中使用的信號格式,需要觸發系統的功能與其待處理的信號之間更好地匹配。
這些快速新協議中的錯誤可能來自多個事件的綜合結果,如邏輯狀態、偏移、瞬變、上升時間問題等。有時,必需規定非常精確的條件范圍,以確定難以捕捉的錯誤。這要求觸發工具系列能夠分析更多的條件。可以采用雙觸發排列來解決這一問題,其中B觸發系統與A系統基本上相同。只是在許多情況下,A條件相對簡單,而在理想情況下,B觸發器應能夠評估比較復雜的一套指標,如只在其它邏輯信號處于規定狀態時才會有效的事件數量等。但是,相關觸發B一直缺乏A觸發系統的靈活性。因此大多數示波器僅提供了非常簡單的B觸發器。
讓兩個觸發器共同運行
圖1是簡化形式的全功能雙觸發系統。
圖1 全功能雙觸發結構
其中位于最后的觸發器將幫助示波器捕獲有問題的信號,可能發生的條件如下:
是否發生A事件。用戶可以規定邊沿、削幅脈沖或許多其它條件;
在A事件發生時正確的邏輯狀態(從最多兩個不同輸入中收集)是否生效;
是否滿足A觸發器和B觸發器之間的延遲條件。“延遲”可以用時間或事件數量表示;
是否發生B事件。這可以是建立時間/保持時間超限、削幅脈沖或A觸發器使用的同一類型列表中的任意選擇;
在B事件發生時正確的邏輯狀態(也從最多兩個不同輸入中收集)是否生效;
在整個過程中任何點上是否發生復位條件。復位將會繞過所有后續步驟,返回開頭。
通過以上條件的依次執行明顯提高了觸發系統的靈活性。在同時考慮這兩種事件條件及邏輯判定符時,可能的組合數可以達到幾千種。這樣,用戶獲得了一系列編程選擇,從簡單的單個輸入上的邊沿門限,到使用兩個觸發器、邏輯判定及時間或事件數量的復雜公式。
源自電腦編程領域的IF-THEN-ELSE構成了這類觸發結構的概念模型。如圖1所示,這些語句還包括其它判定符(如A和B之間的定時器/計數器)。不管B事件是否發生,在A事件之后隨時都可以發生復位。
[page]
使用兩個觸發器找到一個脈沖
本文通過最新磁盤驅動器設計項目來介紹全面對稱的雙觸發系統。
本系統中,讀/寫電路中的一個單元設計成在每個有效系統寫入啟動(WE)周期中執行一串32條寫入命令。圖2描述了較大的周期時間與導致數據寫入的各個脈沖的關系。
圖2 兩個觸發器捕獲偏離的寫入脈沖
在這一新興設計中,由于某些周期中發生了額外的脈沖,導致間歇性錯誤。盡管沒有任何方式預測什么時候會發生第33個脈沖,但通過某種手段捕獲不同的33個脈沖的順序可以更簡便地識別可能相關的其它系統事件。
一種解決方案是使用傳統邊沿觸發器采集多次重復的WE周期及相關的寫入脈沖順序,檢測每個WE周期的前沿,然后手動滾動通過數據,找到有問題的周期。這種方法耗時長,而且不能保證在示波器波形的存儲容量范圍內錯誤脈沖只出現一次。工程師更希望的解決方案是只在發生33個脈沖周期時觸發采集。其好處在于,感興趣的周期將自動顯示在屏幕上,而不需麻煩的手動搜索。當然還會存儲觸發事件前和觸發事件后的相關數據,但是觸發發生的簡單事實證明了存在33個脈沖周期。
這也正是雙觸發系統必不可少的地方。在這種情況下,磁盤驅動器設計人員需要設置一個相關觸發器,其中WE信號的前沿(正向沿)作為A觸發事件,而后沿則作為復位條件。
在這一過程中,A事件啟動延遲計數器,計算脈沖數量。一旦產生了32個脈沖,它會使B觸發器監測第33個脈沖。當檢測到特定脈寬時,B系統便設成觸發采集,這時,示波器觸發并記錄數據。如果沒有第33個脈沖,復位條件會重新準備A觸發器,再次啟動整個流程。
如果B觸發器只限于邊沿檢測,那么這種方法是不可能實現的。在這一過程中,不應忽視復位功能值,因為它決定著如果未能發生相應的A事件和B事件組合,示波器及其用戶不會一直等下去。
反常的第33個脈沖是電路中其它地方邏輯設計錯誤的結果。由于可靠的偏離脈沖檢測方法,設計人員能夠使用邏輯判定,進一步縮小觸發條件,進而找到故障所在。
檢測通路間偏移
許多串行通信技術開始時采用單通道串行傳輸結構,后來又演變成增加多條同步傳輸通路,以提供更高的數據速率。這些通路并不以并行總線的方式同步,因為數據將在目的設備中重新對準。但是,通過串行鏈路傳送的相關數據分組之間允許的延遲或偏移有限定極限,不能遵守這一極限稱為“通路超限”。
在最基本的形式下,超限測量由其中一條數據流上觸發的一個字符與相鄰通路中的相對數據偏移組成。但偏移可能會隨著時間變化,在某個時間點位于容限范圍內的通路在另一個時間點可能會越過邊界,所以關鍵是長期內的偏移行為。
全功能雙觸發系統的示波器為監測偏移變化提供了一個強大的工具。它可以檢測任何時間內任意兩條通路之間的時間偏移,可以是幾ns,也可以是幾天。同時還可以在顯示屏上捕獲超出偏移時間范圍的事件,并使用儀器的采集計數器計算事件的數量。
圖3 串行通路偏移超限測量
圖3是對落入8 ns時間窗口內任何地方的偏移測量進行合格/不合格測試的實例。設置如下:
A事件是通路0上的逗號字符。由于它具有可預測的脈寬,因此可以使用脈寬觸發格式檢測到逗號。
B事件是通路1中的逗號字符,通過在B系統中定義脈寬觸發器捕獲。
A觸發器和B觸發器之間的程控延遲設為16.8 ns,這是被測設備的技術指標。也既是窗口的“早期”邊界。
復位時間值設為24.8 ns,這是總線標準允許的容限,既是窗口的另一條邊界。
在這種情況下,如果檢測到A事件,那么在通路1的事件偏移落在16.8 ns和24.8 ns之間時將觸發B觸發器。如果在24.8 ns極限到期前沒有檢測到任何B事件,那么儀器將重新準備A觸發器,開始查找新的周期。在圖3中,通過采集發現兩條通路之間的偏移是19.8 ns。
[page]
監測信標
許多串行通信設備通過傳輸由專門分組包的包頭和可變長度數據塊組成的“信標”信號,來表明其存在于通信信道上。有時這些設備會在錯誤狀態下開機,并會傳送一個信標,其中包含與設備狀態有關的額外信息,這時可能會導致信標長于正常時長。而信標信號的最大長度是大多數設備指標的組成部分,因此必須檢查任何超限特點。具有全功能A觸發系統和B觸發系統的示波器可以解決這種測量問題。圖4是檢測到信標寬度超限時采集設置的屏幕圖。
圖4 檢測信標寬度超限
A事件觸發器設成檢測信標信號包頭分組中的逗號字符 (K28.5,8b/10b格式)。為此,要使用脈寬觸發格式。有效的A事件定義為由逗號字符中五個二進制1或0組成的總脈寬。
在“正確”信標信號的最大寬度上設置A-B的延遲時間。B觸發器直到延遲已過時才開始評估其條件,這時信標應該空閑。
B事件觸發器設置為超時。在觸發系統的語言中,也就是定義為沒有發生轉換的一段時間,換句話說是沒有信號。如果在應該為“無”時檢測到信標活動,B觸發器將會被觸發。
復位條件也用時間表示。它定義了測量感興趣的周期時的結束時間。設為3.0 ms,其主要作用是讓A觸發器準備另一次采集。
在上面匯總的觸發條件下,示波器將很容易地檢測到信標寬度錯誤,進而揭示出設計中的問題。
結語
以上應用實例依賴兩個強健的對稱觸發系統并排工作。這些實例說明了通過靈活的兩級觸發系統怎樣觀察在當前快速數字設備中產生信號和錯誤的復雜相關性。帶有對稱A觸發和B觸發的現代數字示波器為迎接這些棘手的測量挑戰及其它問題提供了理想的手段。